:root{--bg:#f5f2ed;--paper:#fff;--ink:#342c27;--muted:#93877e;--line:#ebe5df;--accent:#9d7664;--soft:#f3ece6;--green:#51735e;--sans:"DM Sans",Arial,sans-serif;--serif:"Playfair Display",Georgia,serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px var(--sans)}button,input,select{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}
.demo-banner{height:29px;background:#efe0d4;color:#805d4d;text-align:center;display:grid;place-items:center;font-size:8px;letter-spacing:.13em;position:relative;z-index:6}
.app-shell{display:flex;min-height:calc(100vh - 29px)}
.sidebar{width:230px;flex-shrink:0;position:fixed;top:29px;bottom:0;left:0;z-index:7;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:25px 16px 0;transition:transform .25s}
.brand{display:flex;align-items:center;gap:10px;font:17px var(--serif);letter-spacing:.16em}.brand-mark{width:35px;height:35px;background:#8b6e5e;color:#fff;display:grid;place-items:center;border-radius:50%;font:23px var(--serif)}.brand small{display:block;font:7px var(--sans);letter-spacing:.26em;margin-top:3px}
.sidebar-caption,.overline{font-size:8px;letter-spacing:.16em;color:#a29387}.sidebar-caption{margin:39px 0 10px 11px}
.side-nav{display:flex;flex-direction:column;gap:3px}.side-link{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:11px;text-align:left;padding:11px 11px;color:#756a62;font-size:10px;border-radius:3px;transition:background .18s,color .18s}.side-link i{font-size:14px;color:#a28c7d}.side-link.active,.side-link:hover{background:#f5efea;color:#574237}.side-link.active{font-weight:600}.side-count{margin-left:auto;background:#eaded4;color:#826452;border-radius:12px;font-size:8px;padding:3px 6px}
.sidebar-bottom{margin-top:auto}.view-site{display:block;margin:13px 10px 17px;font-size:9px;color:#907c6e}.view-site i{margin-right:7px}.demo-profile{border-top:1px solid var(--line);padding:14px 3px;display:flex;align-items:center;gap:9px}.demo-profile>span,.avatar{width:31px;height:31px;background:#eadbd0;border-radius:50%;display:grid;place-items:center;color:#806452;font:16px var(--serif)}.demo-profile strong,.demo-profile small{display:block}.demo-profile strong{font-size:9px}.demo-profile small{font-size:8px;color:var(--muted);margin-top:3px}.demo-profile>i{margin-left:auto;color:#9a8e84}
.dashboard-main{margin-left:230px;width:calc(100% - 230px);min-width:0}.topbar{height:57px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:29px;z-index:5}.breadcrumb{font-size:9px;color:#968a81}.breadcrumb i{font-size:8px;margin:0 8px}.breadcrumb strong{font-weight:600;color:#4b403a}.topbar-right{display:flex;align-items:center;gap:17px}.today-label{font-size:9px;color:#81766e}.today-label i{margin-right:5px}.icon-button{border:0;background:none;font-size:15px;position:relative}.icon-button span{position:absolute;width:5px;height:5px;right:1px;top:0;background:#bd7e6e;border-radius:50%}.avatar{width:28px;height:28px;font:14px var(--serif)}
.sidebar-toggle{display:none;border:0;background:transparent;font-size:20px}
.dashboard-content{max-width:1350px;padding:27px 32px 50px;margin:0 auto}.demo-warning{display:flex;align-items:center;gap:11px;padding:12px 15px;background:#fff5eb;border:1px solid #f0e0ce;color:#85674f;font-size:9px;line-height:1.55;margin-bottom:23px}.demo-warning i{font-size:16px}.demo-warning strong{font-weight:700}
.dashboard-view{display:none}.dashboard-view.active{display:block;animation:appear .25s ease}
.page-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.overline{margin:0 0 8px}.page-heading h1{font:32px var(--serif);font-weight:400;letter-spacing:-.03em;margin:0 0 6px}.page-heading h1 em{color:var(--accent)}.page-heading>div>p:last-child{font-size:9px;color:var(--muted);margin:0}
.primary-button,.subtle-button{height:36px;border:0;padding:0 14px;background:#44362f;color:#fff;font-size:9px;display:inline-flex;align-items:center;gap:8px;transition:background .2s}.primary-button:hover{background:#725746}.primary-button:disabled{opacity:.55;cursor:not-allowed}.subtle-button{background:transparent;border:1px solid var(--line);color:#6d5d52}.subtle-button:hover{background:#f6f1ec}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.stat-card,.panel{background:#fff;border:1px solid var(--line);border-radius:3px}.stat-card{min-height:145px;padding:16px 17px;position:relative;overflow:hidden}.stat-top{display:flex;justify-content:space-between;color:#85796f;font-size:9px}.stat-top i{color:#b69a83;font-size:14px}.stat-card>strong{display:block;font:24px var(--serif);margin:14px 0 6px;white-space:nowrap}.stat-card>small{font-size:8px;color:#a0958c}.positive{color:#588263;font-weight:600}.mini-bars{height:25px;position:absolute;bottom:13px;right:15px;display:flex;align-items:end;gap:3px}.mini-bars i{width:5px;background:#eadfd6}.mini-bars i.bar-current{background:#ae8874}.stat-foot{position:absolute;bottom:15px;font-size:8px;color:#a0958c}
.overview-grid{display:grid;grid-template-columns:1.55fr .85fr;gap:14px;margin-bottom:16px}
.panel{padding:18px 19px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel-heading h2{font:17px var(--serif);margin:0 0 5px}.panel-heading p{font-size:8px;color:var(--muted);margin:0}.panel-heading select{border:1px solid var(--line);background:#fff;padding:7px 9px;font-size:8px;color:#796d64}
.chart{height:221px;display:flex;gap:9px;margin-top:18px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;color:#a2968c;font-size:8px;padding-bottom:25px}.chart-area{position:relative;flex:1}.chart-gridlines{position:absolute;inset:0 0 27px;display:flex;flex-direction:column;justify-content:space-between}.chart-gridlines i{border-top:1px dashed #eee9e5}.chart-area svg{position:absolute;left:0;top:0;width:100%;height:calc(100% - 28px);overflow:visible}.chart-x{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;font-size:8px;color:#988b81}
.source-panel{display:flex;flex-direction:column}.more-button,.row-menu{border:0;background:transparent;color:#998c82}.donut{width:130px;height:130px;border-radius:50%;margin:15px auto 14px;background:conic-gradient(#a77b69 0 38%,#d4bca8 38% 64%,#e6d7ca 64% 85%,#81766e 85%);display:grid;place-items:center;position:relative}.donut:before{content:"";width:91px;height:91px;background:#fff;border-radius:50%;position:absolute}.donut>div{z-index:1;text-align:center}.donut strong,.donut span{display:block}.donut strong{font:23px var(--serif)}.donut span{font-size:7px;color:var(--muted)}
.legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}.legend li{font-size:8px;color:#82766d}.legend li i{display:inline-block;width:6px;height:6px;background:var(--color);margin-right:6px;border-radius:50%}.legend b{float:right;color:#5a4e47;font-weight:500}
.table-panel{padding:18px 0 0}.table-panel>.panel-heading{padding:0 19px 15px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:7px;letter-spacing:.1em;color:#a09389;font-weight:600;padding:11px 15px;border-top:1px solid #f1ece8;border-bottom:1px solid #f1ece8}td{font-size:9px;padding:11px 15px;border-bottom:1px solid #f4f0ed;color:#62574f}tbody tr:last-child td{border-bottom:0}td:first-child{font-weight:500}.client-avatar{display:inline-grid;vertical-align:middle;place-items:center;width:25px;height:25px;border-radius:50%;background:#eaded4;color:#8a6e5d;font-size:7px;margin-right:7px}.client-avatar.alt{background:#e0e8df;color:#628068}.client-avatar.pink{background:#f1e0e3;color:#a16c73}.client-avatar.green{background:#e4e9d9;color:#71805b}.status{font-size:7px;padding:5px 8px;border-radius:12px}.status.confirmed{background:#e8f0e8;color:#54805f}.status.pending{background:#fbf0dc;color:#a58243}.status.requested{background:#eee8f4;color:#80649b}.status.cancelled{background:#f6e8e5;color:#aa6559}.row-menu{font-size:16px;line-height:10px}
.table-toolbar{display:flex;gap:10px;padding:0 19px 15px}.table-toolbar input,.table-toolbar select{height:34px;border:1px solid var(--line);background:#fff;padding:0 11px;font-size:9px;outline:none}.table-toolbar input{width:min(280px,100%)}.table-toolbar input:focus,.table-toolbar select:focus{border-color:#b39784}.empty-state{text-align:center;color:var(--muted);font-size:10px;padding:23px}
.table-pagination{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f1ece8;padding:10px 15px;color:#92857b;font-size:8px}.table-pagination>div{display:flex;align-items:center;gap:8px}.table-pagination button{width:25px;height:25px;border:1px solid var(--line);background:#fff;color:#75685e;font-size:8px}.table-pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination-page{min-width:25px;text-align:center}
.team-cards,.package-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.team-card,.package-admin-card,.testimonial-admin-card,.gallery-admin-card{background:#fff;border:1px solid var(--line);padding:16px}.team-card{display:flex;align-items:center;gap:13px}.team-card>img{width:56px;height:56px;object-fit:cover;border-radius:50%}.team-card h3,.package-admin-card h3{font:17px var(--serif);margin:0 0 5px}.team-card p,.package-admin-card p{font-size:8px;color:var(--muted);margin:0 0 5px}.team-card small{font-size:8px;color:#a28470}.package-admin-card{position:relative}.package-admin-card .status{position:absolute;right:14px;top:14px}.package-admin-card>strong{display:block;font:19px var(--serif);margin:15px 0 8px}.package-admin-card ul{font-size:8px;color:#7f7268;padding-left:15px;line-height:1.9}
.admin-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.gallery-admin-card{padding:7px}.gallery-admin-card img{width:100%;height:160px;object-fit:cover}.gallery-admin-card div{display:flex;justify-content:space-between;padding:9px 4px 3px;font-size:8px;color:#81746a}.gallery-admin-card button,.danger-button{border:0;background:transparent;color:#a36356}
.testimonial-list{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.testimonial-admin-card blockquote{font:18px/1.5 var(--serif);margin:0 0 14px}.testimonial-admin-card>div{display:flex;justify-content:space-between;font-size:8px;color:var(--muted)}.testimonial-admin-card .status{background:#fbf0dc;color:#9c7a42}
.empty-panel{text-align:center;padding:49px 20px}.empty-panel>span{width:48px;height:48px;border-radius:50%;background:#f6f0eb;color:#9e7e6a;display:grid;place-items:center;margin:0 auto 14px;font-size:19px}.empty-panel h2{font:21px var(--serif);margin:0 0 7px}.empty-panel p{font-size:9px;color:var(--muted);margin:0}
.settings-panel{max-width:760px;padding:24px}.settings-panel h2{font:20px var(--serif);margin:0 0 19px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.settings-grid label{font-size:8px;color:#81766e}.settings-grid input{display:block;width:100%;height:36px;border:1px solid var(--line);padding:0 10px;margin-top:6px;font-size:9px;color:#574b43}.settings-panel .primary-button{margin-top:20px}.form-message{font-size:9px;color:var(--green);margin:12px 0 0}
.modal-backdrop{position:fixed;inset:0;z-index:20;background:#231a16a8;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.modal-backdrop.open{opacity:1;visibility:visible}.modal-card{position:relative;background:#fff;padding:29px;width:min(440px,100%);max-height:90vh;overflow:auto;box-shadow:0 15px 60px #24181044}.modal-card h2{font:26px var(--serif);margin:0 0 20px}.modal-close{position:absolute;right:17px;top:16px;border:0;background:none;color:#857970}.modal-card form label{display:block;font-size:9px;margin:12px 0 5px;color:#62574f}.modal-card input,.modal-card select,.modal-card textarea{width:100%;min-height:37px;border:1px solid var(--line);background:#fff;padding:8px;font-size:9px;outline:none}.modal-card textarea{height:80px;resize:vertical}.modal-card form .primary-button{margin-top:18px}.modal-footnote{font-size:8px;color:#9b8d83;margin:14px 0 0;line-height:1.5}.toast-message{position:fixed;bottom:20px;right:20px;z-index:30;background:#44362f;color:#fff;padding:12px 17px;font-size:9px;opacity:0;transform:translateY(8px);pointer-events:none;transition:all .2s}.toast-message.show{opacity:1;transform:none}
.sidebar-shade{display:none}
@keyframes appear{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.sidebar{width:205px}.dashboard-main{margin-left:205px;width:calc(100% - 205px)}.dashboard-content{padding-left:22px;padding-right:22px}.stats-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1.3fr .9fr}.stat-card{min-height:130px}}
@media(max-width:760px){.demo-banner{font-size:7px;letter-spacing:.04em;padding:0 6px}.sidebar{transform:translateX(-100%);width:250px;top:29px;box-shadow:10px 0 30px #34261d15}.sidebar.open{transform:none}.sidebar-shade{display:block;position:fixed;inset:29px 0 0;background:#231a1666;z-index:6;opacity:0;visibility:hidden;transition:all .2s}.sidebar-shade.open{opacity:1;visibility:visible}.dashboard-main{margin:0;width:100%}.topbar{padding:0 15px}.sidebar-toggle{display:block}.breadcrumb{margin-right:auto;margin-left:10px}.today-label{display:none}.topbar-right{gap:10px}.dashboard-content{padding:18px 14px 35px}.page-heading{align-items:flex-start}.page-heading h1{font-size:27px}.page-heading .primary-button{height:33px;padding:0 10px;font-size:8px;white-space:nowrap}.stats-grid{gap:8px}.stat-card{min-height:123px;padding:13px 11px}.stat-card>strong{font-size:20px}.overview-grid{grid-template-columns:1fr}.source-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center}.source-panel .panel-heading{grid-column:1/-1}.donut{margin:15px 0}.legend{grid-column:2;grid-row:2}.table-panel{padding-top:14px}.table-panel>.panel-heading{padding-left:13px;padding-right:13px}.table-toolbar{padding-left:13px;padding-right:13px}.team-cards,.package-cards{grid-template-columns:1fr 1fr}.admin-gallery{grid-template-columns:repeat(2,1fr)}.gallery-admin-card img{height:145px}.testimonial-list{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.panel{padding:14px}.table-panel{padding:14px 0 0}}
@media(max-width:420px){.page-heading{flex-direction:column}.page-heading .primary-button{align-self:flex-start}.stats-grid{grid-template-columns:1fr 1fr}.stat-card>strong{font-size:18px}.team-cards,.package-cards{grid-template-columns:1fr}.source-panel{grid-template-columns:1fr}.source-panel .panel-heading{grid-column:1}.donut{margin:12px auto}.legend{grid-column:1;grid-row:auto}.topbar{height:51px}.breadcrumb{font-size:8px}}
